package model.base;



import java.util.Iterator;
import java.util.Set;

// Usado por CompanyDAO, CompanyHibernateDAO, Inventory, UserContainer
public class Department extends Company{


	
	public Department(){
		super();
		this.setLeaf(true);
		int kind=2;
		this.setKind(CompanyKind.DEPARTMENT);

	}

	/**
	 * @uml.property  name="resourceContainer"
	 * @uml.associationEnd  multiplicity="(0 -1)" inverse="department:model.base.Inventory"
	 * @uml.association  name="has"
	 */
	private Set resourceContainer;

	/**
	 * Getter of the property <tt>resourceContainer</tt>
	 * @return  Returns the resourceContainer.
	 * @uml.property  name="resourceContainer"
	 */
	public Set getResourceContainer() {
		return resourceContainer;
	}

	/**
	 * Setter of the property <tt>resourceContainer</tt>
	 * @param resourceContainer  The resourceContainer to set.
	 * @uml.property  name="resourceContainer"
	 */
	public void setResourceContainer(Set resourceContainer) {
		this.resourceContainer = resourceContainer;
	}

	/**
	 * @uml.property  name="projectComponent"
	 * @uml.associationEnd  multiplicity="(0 -1)" aggregation="composite" inverse="department:model.projects.ProjectComponent"
	 * @uml.association  name="has"
	 */
	private Set projectComponent;

	/**
	 * Getter of the property <tt>projectComponent</tt>
	 * @return  Returns the projectComponent.
	 * @uml.property  name="projectComponent"
	 */
	public Set getProjectComponent() {
		return projectComponent;
	}

	/**
	 * Setter of the property <tt>projectComponent</tt>
	 * @param projectComponent  The projectComponent to set.
	 * @uml.property  name="projectComponent"
	 */
	public void setProjectComponent(Set projectComponent) {
		this.projectComponent = projectComponent;
	}

	
	public Iterator listProjects(){
		return projectComponent.iterator();
	}
	
	public Iterator listResources(){
		return resourceContainer.iterator();
	}
	


	
}
